Cam curve generating device, cam curve generating method, and program

ABSTRACT

Provided is cam curve generating device that generates a cam curve that is smoothly connected to an out-section cam curve and reduces fluctuations in speed of a driven shaft and acceleration of the driven shaft. Cam curve generating device includes section divider that divides an application section into a plurality of sub-sections, and cam curve generator that generates a cam curve in the application section. The division condition includes a length and the type of each of the plurality of sub-sections. The boundary condition includes a position, speed, and acceleration of the driven shaft at each of a start and an end of the application section. Cam curve generator generates a cam curve that allows a position of the driven shaft, speed of the driven shaft, and acceleration of the driven shaft to be continuous at each of boundaries of the plurality of sub-sections.

TECHNICAL FIELD

The present disclosure relates to a cam curve generating device thatgenerates a cam curve for implementing electronic cam control forcontrolling a position of a driven shaft in synchronization with aposition of a main shaft.

BACKGROUND ART

There has been known a technique for generating a cam curve smoothlyconnected to an out-section cam curve outside a section when a boundarycondition between a start of the section and an end of the section isgiven (e.g., see PTL 1). Here, the smooth connection between theout-section cam curve and the cam curve generated means that a positionof the driven shaft, speed of the driven shaft, and acceleration of thedriven shaft at a connection point are continuous in the out-section camcurve and the cam curve generated. Additionally, certain physicalquantities continuous between the out-section cam curve and the camcurve generated at the connection point mean that the physicalquantities are equal at the connection point.

CITATION LIST Patent Literature

-   PTL 1: Unexamined Japanese Patent Publication No. 2006-172438

SUMMARY OF THE INVENTION

According to a conventional technique of generating a cam curve, a camcurve corresponding boundary conditions at a start of a section and anend of the section is uniquely determined. This technique may generate acam curve that causes relatively large fluctuation in speed of a drivenshaft or in acceleration of the driven shaft in an application sectiondepending on the boundary conditions at the start of the section and theend of the section.

Thus, it is an object of the present disclosure to provide a cam curvegenerating device, a cam curve generating method, and a program forcausing the cam curve generating device to execute a cam curvegeneration processing, which are each capable of generating a cam curvethat reduces fluctuations in speed of the driven shaft and inacceleration of the driven shaft in an application section while beingsmoothly connected to an out-section cam curve.

A cam curve generating device according to an aspect of the presentdisclosure controls a position of a driven shaft by electronic camcontrol. The cam curve generating device includes a boundary conditionacquisition part, a division condition acquisition part, a sectiondivider, and a cam curve generator. The boundary condition acquisitionpart acquires a boundary condition of an application section to be atarget of generation of the cam curve in a range in which the main shaftchanges in position. The division condition acquisition part acquires adivision condition for dividing the application section into multiplesub-sections. The section divider divides the application section intothe multiple sub-sections that satisfy the division condition. The camcurve generator generates a cam curve in the application section, thecam curve satisfying the boundary condition. Each of the multiplesub-sections is any one of types of a sub-section in which accelerationof the driven shaft monotonously increases, a sub-section in which theacceleration of the driven shaft monotonously decreases, and asub-section in which the acceleration of the driven shaft does notchange. The division condition includes a length and a type of each ofthe multiple sub-sections. The boundary condition includes a position ofthe driven shaft, speed of the driven shaft, and acceleration of thedriven shaft at each of a start and an end of the application section.The cam curve generator further generates the cam curve that allows aposition of the driven shaft, speed of the driven shaft, andacceleration of the driven shaft to be continuous at each of boundariesof the multiple sub-sections.

A cam curve generating method according to another aspect of the presentdisclosure is for generating a cam curve for implementing electronic camcontrol for controlling a position of a driven shaft. The cam curvegenerating method includes a first step, a second step, a third step,and a fourth step. The first step is performed to acquire a boundarycondition of an application section to be a target of generation of thecam curve in a range in which the main shaft changes in position. Thesecond step is performed to acquire a division condition for dividingthe application section into multiple sub-sections. The third step isperformed to divide the application section into the multiplesub-sections that satisfy the division condition. The fourth step isperformed to generate the cam curve in the application section, the camcurve satisfying the boundary condition. Each of the multiplesub-sections is any one of types of a sub-section in which accelerationof the driven shaft monotonously increases, a sub-section in which theacceleration of the driven shaft monotonously decreases, and asub-section in which the acceleration of the driven shaft does notchange. The division condition includes a length and a type of each ofthe multiple sub-sections. The boundary condition includes a position ofthe driven shaft, speed of the driven shaft, and acceleration of thedriven shaft at each of a start and an end of the application section.The fourth step is performed to further generate a cam curve that allowsa position of the driven shaft, speed of the driven shaft, andacceleration of the driven shaft to be continuous at each of boundariesof the multiple sub-sections.

A program according to yet another aspect of the present disclosure isfor causing a cam curve generating device to perform a cam curvegeneration processing of generating a cam curve for implementingelectronic cam control for controlling a position of a driven shaft. Theprogram includes a first step, a second step, a third step, and a fourthstep. The cam curve generation processing is performed in the first stepto acquire a boundary condition of an application section to be a targetof generation of the cam curve in a range in which the main shaftchanges in position. The second step is performed to acquire a divisioncondition for dividing the application section into multiplesub-sections. The third step is performed to divide the applicationsection into the multiple sub-sections that satisfy the divisioncondition. The fourth step is performed to generate the cam curve in theapplication section, the cam curve satisfying the boundary condition.Each of the multiple sub-sections is any one of types of a sub-sectionin which acceleration of the driven shaft monotonously increases, asub-section in which the acceleration of the driven shaft monotonouslydecreases, and a sub-section in which the acceleration of the drivenshaft does not change. The division condition includes a length and atype of each of the multiple sub-sections. The boundary conditionincludes a position of the driven shaft, speed of the driven shaft, andacceleration of the driven shaft at each of a start and an end of theapplication section. The fourth step is performed to generate the camcurve that allows a position of the driven shaft, speed of the drivenshaft, and acceleration of the driven shaft to be continuous at each ofboundaries of the multiple sub-sections.

The cam curve generating device, the cam curve generating device, andthe program according to the present disclosure enables generating a camcurve that reduces fluctuations in speed of the driven shaft and inacceleration of the driven shaft in an application section while beingsmoothly connected to an out-section cam curve.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating an example of a configuration ofa cam curve generation system according to a first exemplary embodiment.

FIG. 2 is a flowchart of a first cam curve generation processingaccording to the first exemplary embodiment.

FIG. 3 is a waveform chart illustrating an example of a cam curveaccording to the first exemplary embodiment.

FIG. 4 is a waveform chart illustrating another example of the cam curveaccording to the first exemplary embodiment.

FIG. 5 is a block diagram illustrating an example of a configuration ofa cam curve generation system according to a second exemplaryembodiment.

FIG. 6 is a flowchart of a second cam curve generation processingaccording to the second exemplary embodiment.

DESCRIPTION OF EMBODIMENT

(Background of Obtaining One Aspect of Present Disclosure)

Industrial equipment exists to repeatedly and continuously perform aseries of processing processes, such as a pillow packaging machine thatpackages a product with a film by cutting the film in predetermineddimensions to seal the product while continuously feeding the film. Thiskind of industrial equipment includes multiple shafts for performing aseries of processing processes, and performs a required operation whilesynchronizing the multiple shafts with each other.

Known examples of a method for synchronizing multiple shafts with eachother include a method for applying a cyclic motion to a driven shaftusing a cam mechanism mechanically attached to a drive shaft serving asa main shaft, and a method for cyclically driving each driven shaft in apattern of a position signal correlated with another shaft using aservomotor. Examples of the latter include a method for controlling adriven shaft by electronic cam control.

The method for controlling a driven shaft by electronic cam control isperformed to output a position command of the driven shaft to the servomotor based on a cam curve defining a relationship between a position ofthe main shaft and a position of the driven shaft. The method forcontrolling a driven shaft by electronic cam control has advantages offacilitating change in operation pattern and enabling simplification ofa mechanism as compared with a method for controlling a driven shaftusing a mechanical cam mechanism.

The cam curve is generated according to an operation pattern requiredfor the industrial equipment. Known methods for generating a cam curveinclude a method for dividing an operation pattern into multiplesections, generating a cam curve for each section, and connecting camcurves of the multiple sections to generate one cam curve.

Examples of a known method for a driven shaft being an end sealer shaftof a pillow packaging machine include a method for generating a camcurve by dividing the cam curve into at least two sections of a section(also referred to below as a “sealing section”) from a start position toan end position of one sealing and a period (also referred to below as a“relay section”) from the end position of the one sealing to a startposition of next sealing.

The sealing section requires a sealing surface of the end sealer to bein contact with a predetermined sealing part of a film, so that movingspeed of the end sealer is uniquely determined with respect to transportspeed of the film. As a result, the cam curve of the end sealer shaft inthe sealing section is uniquely determined.

In contrast, the relay section allows the sealing surface of the endsealer to operate away from the film, so that the moving speed of theend sealer can be defined ambiguously with respect to the transportspeed of the film. As a result, the cam curve of the end sealer shaft inthe relay section is ambiguously determined.

When an operation pattern is divided into multiple sections and a camcurve is generated for each section, speed of a driven shaft obtained byfirst differentiating the cam curve at a position of a main shaft andacceleration of the driven shaft obtained by second differentiating thecam curve may be discontinuous at a boundary between two adjacentsections.

This kind of discontinuity causes rapid change in speed, acceleration,and the like of the driven shaft near the boundary. The rapid change inspeed and acceleration of the driven shaft causes relatively largeacceleration, torque, jerk, and the like in the driven shaft, and thuscausing vibration or impact to be applied to the industrial equipment.

To prevent such vibration or impact applied to the industrial equipment,a cam curve needs to be generated in a first section in which a camcurve is ambiguously determined, such as the relay section in the pillowpackaging machine described above, while having a smooth connection to acam curve of a second section in which a cam curve is uniquelydetermined, the second section being adjacent to the first section.Known examples of a technique for generating such a cam curve include aconventional technique described in PTL 1.

This conventional technique allows a cam curve having a smoothconnection to an out-section cam curve to be generated at a boundarywith an adjacent section by using a cam curve in which a position of adriven shaft with respect to a position of a main shaft is defined by aquintic function, speed of the driven shaft with respect to the positionof the main shaft is defined by a quartic function, and acceleration ofthe driven shaft with respect to the position of the main shaft isdefined by a cubic function.

Unfortunately, the above-described conventional technique gives boundaryconditions at a start of a section and an end of the section to cause acam curve to be uniquely determined in shape according to the boundaryconditions. As a result, this technique may cause speed of a drivenshaft or acceleration of the driven shaft to fluctuate relativelylargely in an application section depending on the boundary conditionsat the start of the section and the end of the section.

When fluctuation of the speed of the driven shaft or the acceleration ofthe driven shaft increases, vibration or impact applied to theindustrial equipment increases more. Additionally, a motor capable ofdrawing higher speed and torque is required, and thus causing increasein cost, size, weight, and the like of industrial equipment.

Thus, the inventors have intensively repeated experiments and studies ona cam curve generating device capable of generating a cam curve thatreduces fluctuations in speed of the driven shaft and in acceleration ofthe driven shaft in an application section while being smoothlyconnected to an out-section cam curve.

As a result, the inventors have conceived the cam curve generatingdevice below and the like, and the cam curve generating method below.

A cam curve generating device according to an aspect of the presentdisclosure generates a cam curve of electronic cam control forcontrolling a position of a driven shaft. The cam curve generatingdevice includes a boundary condition acquisition part, a divisioncondition acquisition part, a section divider, and a cam curvegenerator. The boundary condition acquisition part acquires a boundarycondition of an application section to be a target of generation of thecam curve in a range in which the main shaft changes in position. Thedivision condition acquisition part divides the application section intomultiple sub-sections. The section divider divides the applicationsection into the multiple sub-sections that satisfy the divisioncondition. The cam curve generator generates the cam curve in theapplication section, the cam curve satisfying the boundary condition.Each of the multiple sub-sections is any one of types of a sub-sectionin which acceleration of the driven shaft monotonously increases, asub-section in which the acceleration of the driven shaft monotonouslydecreases, and a sub-section in which the acceleration of the drivenshaft does not change. The division condition includes a length and atype of each of the multiple sub-sections. The boundary conditionincludes a position of the driven shaft, speed of the driven shaft, andacceleration of the driven shaft at each of a start and an end of theapplication section. The cam curve generator generates the cam curvethat allows a position of the driven shaft, speed of the driven shaft,and acceleration of the driven shaft to be continuous at each ofboundaries of the multiple sub-sections.

The cam curve generating device having the above configuration causesthe driven shaft to be determined in position, speed, and accelerationat the start and the end of the application section according toboundary conditions acquired. As a result, the cam curve generatingdevice having the above configuration enables generating a cam curvehaving a smooth connection to an out-section cam curve outside theapplication section by appropriately setting a boundary condition to beacquired.

The cam curve generating device having the above configurationdetermines speed of the driven shaft and acceleration of the drivenshaft in the application section according to a division conditionacquired. As a result, the cam curve generating device having the aboveconfiguration enables generating a cam curve that reduces fluctuationsin speed of the driven shaft and in acceleration of the driven shaft inthe application section by appropriately setting a division condition tobe acquired.

Thus, the cam curve generating device having the above configurationenables generating a cam curve that reduces fluctuations in speed of thedriven shaft and in acceleration of the driven shaft in an applicationsection while being smoothly connected to an out-section cam curve.

In at least one sub-section of a type in which the acceleration of thedriven shaft monotonically increases or monotonically decreases, the camcurve generator may generate the cam curve with a waveform of theacceleration of the driven shaft from a start to an end of the at leastone sub-section, the waveform having a shape of a ¼ period part up tothe apex of a sine wave.

In at least one sub-section of the type in which the acceleration of thedriven shaft monotonically increases or monotonically decreases, the camcurve generator may generate the cam curve with a waveform of theacceleration of the driven shaft from the start to the end of the atleast one sub-section, the waveform having a shape of a half period partfrom the apex of the sine wave.

In at least one sub-section of the type in which the acceleration of thedriven shaft monotonically increases or monotonically decreases, the camcurve generator may generate the cam curve with a waveform of theacceleration of the driven shaft from the start to the end of the atleast one sub-section, the waveform having a shape of a ¼ period partfrom the apex of the sine wave.

In at least one sub-section of the type in which the acceleration of thedriven shaft monotonically increases or monotonically decreases, the camcurve generator may generate the cam curve with a waveform of theacceleration of the driven shaft from the start to the end of the atleast one sub-section, the waveform being defined by a linear polynomialof a position of the main shaft.

The multiple sub-sections may be five sub-sections that include a firstsub-section, a second sub-section, a third sub-section, a fourthsub-section, and a fifth sub-section, and that are sequentiallycontinuous. The first sub-section, the third sub-section, and the fifthsub-section may be each a sub-section of a type in which acceleration ofthe driven shaft monotonically increases or monotonically decreases, andthe second sub-section and the fourth sub-section may be each asub-section of a type in which the acceleration of the driven shaft doesnot change.

The acceleration of the driven shaft in the second sub-section and thefourth sub-section may have a value other than zero.

The multiple sub-sections may be seven sub-sections that include a firstsub-section, a second sub-section, a third sub-section, a fourthsub-section, a fifth sub-section, a sixth sub-section, and a seventhsub-section, and that are sequentially continuous. The firstsub-section, the third sub-section, the fifth sub-section, and theseventh sub-section may be each a sub-section of a type in which theacceleration of the driven shaft monotonically increases ormonotonically decreases. The second sub-section, the fourth sub-section,and the sixth sub-section may be each a sub-section of a type in whichthe acceleration of the driven shaft does not change.

The acceleration of the driven shaft in the second sub-section and thesixth sub-section may have a value other than zero, and the accelerationof the driven shaft in the fourth sub-section may be zero.

Additionally, a section setting part that divides a range in which themain shaft changes in position into the application section and anon-application section other than the application section may beprovided.

An existing cam curve storage and a boundary condition calculator may befurther provided. The existing cam curve storage stores an existing camcurve generated in advance. The boundary condition calculator calculatesvalues below. Specifically, the values to be calculated from theexisting cam curve include: a first position of the driven shaft at afirst position of a main shaft; first speed of the driven shaft at thefirst position of the main shaft; first acceleration of the driven shaftat the first position of the main shaft; a second position of the mainshaft at a time after the first position of the main shaft; second speedof the driven shaft at the second position of the main shaft; and secondacceleration of the driven shaft at the second position of the mainshaft. Then, boundary conditions shown below are calculated for a firstsection from the first position of the main shaft to the second positionof the main shaft, the first section being defined as the applicationsection in the range in which the main shaft changes in position in theexisting cam curve. Specifically, the boundary conditions to becalculated include a first boundary condition where the first positionof the driven shaft, the first speed of the driven shaft, and the firstacceleration of the driven shaft are respectively defined as a positionof the driven shaft at the start, speed of the driven shaft at thestart, and acceleration of the driven shaft at the start. The boundaryconditions to be calculated also include a second boundary conditionwhere the second position of the driven shaft, the second speed of thedriven shaft, and the second acceleration of the driven shaft arerespectively defined as a position of the driven shaft at the end, speedof the driven shaft at the end, and acceleration of the driven shaft atthe end. The boundary condition acquisition part acquires the firstboundary condition at the start and the second boundary condition at thestart end, which are calculated by the boundary condition calculator.The division condition acquisition part acquires the division conditionwhere the first section is defined as the application section. Thesection divider defines the first section as the application section anddivides the application section into the multiple sub-sections. The camcurve generator may generate the cam curve with the first section as theapplication section.

A cam curve generating method according to another aspect of the presentdisclosure is for generating a cam curve for implementing electronic camcontrol for controlling a position of a driven shaft. The cam curvegenerating method includes a first step, a second step, a third step,and a fourth step. The first step is performed to acquire a boundarycondition of an application section to be a target of generation of thecam curve in a range in which the main shaft changes in position. Thesecond step is performed to acquire a division condition for dividingthe application section into multiple sub-sections. The third step isperformed to divide the application section into the multiplesub-sections that satisfy the division condition. The fourth step isperformed to generate the cam curve in the application section, the camcurve satisfying the boundary condition. Each of the multiplesub-sections is any one of types of a sub-section in which accelerationof the driven shaft monotonously increases, a sub-section in which theacceleration of the driven shaft monotonously decreases, and asub-section in which the acceleration of the driven shaft does notchange. The division condition includes a length and a type of each ofthe multiple sub-sections. The boundary condition includes a position ofthe driven shaft, speed of the driven shaft, and acceleration of thedriven shaft at each of a start and an end of the application section.The fourth step is performed to further generate the cam curve thatallows a position of the driven shaft, speed of the driven shaft, andacceleration of the driven shaft to be continuous at each of boundariesof the multiple sub-sections.

The cam curve generating method causes the driven shaft to be determinedin position, speed, and acceleration at the start and the end of theapplication section according to boundary conditions acquired. As aresult, the cam curve generating method enables generating a cam curvehaving a smooth connection to an out-section cam curve outside theapplication section by appropriately setting a boundary condition to beacquired.

The cam curve generating method determines speed of the driven shaft andacceleration of the driven shaft in the application section according toa division condition acquired. As a result, the cam curve generatingmethod enables generating a cam curve that reduces fluctuations in speedof the driven shaft and in acceleration of the driven shaft in theapplication section by appropriately setting a division condition to beacquired.

The cam curve generating method then enables generating a cam curve thatreduces fluctuations in speed of the driven shaft and in acceleration ofthe driven shaft in an application section while being smoothlyconnected to an out-section cam curve.

A program according to yet another aspect of the present disclosure isfor causing a cam curve generating device to perform a cam curvegeneration processing of generating a cam curve for implementingelectronic cam control for controlling a position of a driven shaft. Theprogram includes a first step, a second step, a third step, and a fourthstep. The cam curve generation processing is performed in the first stepto acquire a boundary condition of an application section to be a targetof generation of the cam curve in a range in which the main shaftchanges in position. The second step is performed to acquire a divisioncondition for dividing the application section into multiplesub-sections. The third step is performed to divide the applicationsection into the multiple sub-sections that satisfy the divisioncondition. The fourth step is performed to generate the cam curve in theapplication section, the cam curve satisfying the boundary condition.Each of the multiple sub-sections is any one of types of a sub-sectionin which acceleration of the driven shaft monotonously increases ormonotonously decreases, and a sub-section in which the acceleration ofthe driven shaft does not change. The division condition includes alength and a type of each of the multiple sub-sections. The boundarycondition includes a position of the driven shaft, speed of the drivenshaft, and acceleration of the driven shaft at each of a start and anend of the application section. The fourth step is performed to furthergenerate a cam curve that allows a position of the driven shaft, speedof the driven shaft, and acceleration of the driven shaft to becontinuous at each of boundaries of the multiple sub-sections.

The program causes the driven shaft to be determined in position, speed,and acceleration at the start and the end of the application sectionaccording to boundary conditions acquired. As a result, the programenables generating a cam curve having a smooth connection to anout-section cam curve outside the application section by appropriatelysetting a boundary condition to be acquired.

The program determines speed of the driven shaft and acceleration of thedriven shaft in the application section according to a divisioncondition acquired. As a result, the program enables generating a camcurve that reduces fluctuations in speed of the driven shaft and inacceleration of the driven shaft in the application section byappropriately setting a division condition to be acquired.

The program then enables generating a cam curve that reducesfluctuations in speed of the driven shaft and in acceleration of thedriven shaft in an application section while being smoothly connected toan out-section cam curve.

Hereinafter, specific examples of a cam curve generating device and acam curve generating method according to aspects of the presentdisclosure will be described with reference to the drawings. Exemplaryembodiments to be described herein each illustrate a specific example ofthe present disclosure. Numerical values, shapes, constituentcomponents, arrangement positions and connection modes of theconstituent components, steps, order of the steps, and the likeillustrated in the exemplary embodiments below are merely examples, andthus are not intended to limit the present disclosure. Each of thedrawings is a schematic view, and is not necessarily preciselyillustrated.

Comprehensive or specific aspects of the present disclosure may beachieved by a system, a method, an integrated circuit, a computerprogram, or a recording medium such as a computer-readable CD-ROM, ormay be achieved by any combination of the system, the method, theintegrated circuit, the computer program, and the recording medium.

First Exemplary Embodiment

Here, an electronic cam control system that performs electronic camcontrol for controlling a position of a driven shaft in synchronizationwith a position of a main shaft will be described with reference to thedrawings.

<Configuration>

FIG. 1 is a block diagram illustrating an example of a configuration ofcam curve generation system 1 according to a first exemplary embodiment.

As illustrated in FIG. 1 , cam curve generation system 1 includes camcurve generating device 100, servo control device 200, and motor 300.

Cam curve generating device 100 generates a cam curve for implementingelectronic cam control for controlling a position of a driven shaft insynchronization with a position of a main shaft, the cam curve defininga relationship between the position of the main shaft and the positionof the driven shaft.

The cam curve may be a function that defines the relationship betweenthe position of the main shaft and the position of the driven shaft, ormay be a data table, for example.

The cam curve may further define a relationship between the position ofthe main shaft and speed of the driven shaft, a relationship between theposition of the main shaft and acceleration of the driven shaft, or arelationship between the position of the main shaft and a jerk of thedriven shaft, for example. That is, the cam curve may further include afunction that defines the relationship between the position of the mainshaft and the speed of the driven shaft, the relationship between theposition of the main shaft and the acceleration of the driven shaft, orthe relationship between the position of the main shaft and the jerk ofthe driven shaft, or may include a data table.

Cam curve generating device 100 also generates and outputs a command tothe driven shaft based on the cam curve generated and a main shaftposition indicating a position of the main shaft. The command may be aposition command, a speed command, or a torque command, for example.

Here, the main shaft position is a position signal serving as areference for synchronization of cam curve generation system 1. The mainshaft position may be a position command to the main shaft, a signalindicating a position of the main shaft acquired by an external devicesuch as a pulser or an encoder, a signal indicating a position of ashaft other than the main shaft, the shaft operating in synchronizationwith the main shaft, or a signal indicating a position of a movable partof industrial equipment such as a belt conveyor, for example. When themain shaft position is a position command to the main shaft, cam curvegenerating device 100 may generate the position command. Additionally,the main shaft is not necessarily an actual shaft, but may be a virtualshaft.

Motor 300 drives the driven shaft.

Motor 300 is controlled by servo control device 200 based on a commandto the driven shaft output from cam curve generating device 100.

As illustrated in FIG. 1 , cam curve generating device 100 includesinput receiver 10, section information acquisition part 20, divisioncondition acquisition part 30, boundary condition acquisition part 40,section setting part 50, section divider 60, cam curve generator 70, camcurve storage 80, and driven shaft command generator 90.

Cam curve generating device 100 may be composed of a computer includinga processor and a memory, for example. In this case, each of componentsconstituting cam curve generating device 100 may be implemented by theprocessor executing a program stored in a memory, for example.

Input receiver 10 receives input of a cam curve generation condition.

The cam curve generation condition includes section informationindicating an application section to be a target of generation for whichthe cam curve is generated in a range in which the main shaft changes inposition, a boundary condition of the application section, and adivision condition for dividing the application section into multiplesub-sections.

Section information acquisition part 20 acquires section informationfrom the cam curve generation condition received by input receiver 10.Although the section information is here described as being included inthe cam curve generation condition, the section information may bedetermined in advance, for example. In this case, section informationacquisition part 20 may store predetermined section information insteadof acquiring the section information from the cam curve generationcondition received by input receiver 10.

As an example that is not necessarily limited, the section informationis indicated by a coordinate value in an xy orthogonal coordinate systemin which a position of the main shaft is along x-axis (horizontal axis)and a position of the driven shaft is along y-axis (vertical axis), forexample. The coordinate value may be only the position of the mainshaft, or may be the position of the main shaft and the position of thedriven shaft, for example. Here, the coordinate value will be describedas the position of the main shaft and the position of the driven shaft.

Section setting part 50 divides the range in which the main shaftchanges in position into an application section and a non-applicationsection other than the application section based on the sectioninformation acquired by section information acquisition part 20. As aresult, section setting part 50 sets the application section and thenon-application section.

The application section corresponds to a first section in which a camcurve is ambiguously determined, such as a relay section in which thedriven shaft is an end sealer shaft of a pillow packaging machine, andthe non-application section corresponds to a second section in which thecam curve is uniquely determined, such as a seal section in which thedriven shaft is the end sealer shaft of the pillow packaging machine.

When determining the application section and the non-applicationsection, section setting part 50 acquires an out-section cam curvedefining a relationship between a position of the main shaft and aposition of the driven shaft in the non-application section from theoutside or generates the out-section cam curve.

To generate the out-section cam curve, the section setting part 50 mayacquire dimensions of various components in the industrial equipment,operation conditions in a processing process performed by the industrialequipment, and the like from the outside in addition to coordinatevalues in the section information to generate the out-section cam curvebased on the coordinate values, the dimensions, the operationconditions, and the like.

The out-section cam curve may further define a relationship between theposition of the main shaft and speed of the driven shaft, a relationshipbetween the position of the main shaft and acceleration of the drivenshaft, or a relationship between the position of the main shaft and ajerk of the driven shaft, in the non-application section, for example.

The out-section cam curve acquired or generated by section setting part50 is stored in cam curve storage 80 described later.

Division condition acquisition part 30 acquires the division conditionfrom the cam curve generation condition received by input receiver 10.Although the division condition is here described as being included inthe cam curve generation condition, the division condition may bedetermined in advance, for example. In this case, division conditionacquisition part 30 may store a predetermined division condition insteadof acquiring the division condition from the cam curve generationcondition received by input receiver 10.

The division condition includes the number of divisions indicating thenumber of multiple sub-sections to be acquired by division, a length ofeach of the multiple sub-sections, and a type of each of the multiplesub-sections.

Here, the length of each sub-section is information that enablescalculation of a difference between a position of the main shaft at thestart of the sub-section and a position of the main shaft at the end ofthe sub-section. As an example that is not necessarily limited, thelength of the sub-section is an interval between the position of themain shaft at the start of the sub-section and the position of the mainshaft at the end of the sub-section, for example.

Here, the type is information indicating whether the sub-section hasacceleration of the driven shaft that monotonously increases ormonotonously decreases, or has acceleration of the driven shaft thatdoes not change.

The section divider 60 divides the application section into multiplesub-sections based on the division condition acquired by divisioncondition acquisition part 30, the multiple sub-sections satisfying thedivision condition.

As a result, the section divider 60 divides the application section intoany one of types of sub-section, the types including a type in which theacceleration of the driven shaft monotonously increases or monotonouslydecreases, and a type in which the acceleration of the driven shaft doesnot change.

When dividing the application section into multiple sub-sections,section divider 60 outputs information indicating each sub-section tocam curve generator 70. The information indicating the sub-section maybe a coordinate value of a position of the main shaft at a boundary ofthe sub-section and the type of the sub-section, for example.

Boundary condition acquisition part 40 acquires a boundary conditionfrom the cam curve generation condition received by input receiver 10.

The boundary condition includes a position of the driven shaft, speed ofthe driven shaft, and acceleration of the driven shaft at each of astart and an end of the application section.

Although the boundary condition is here described as being included inthe cam curve generation condition, the boundary condition may bedetermined in advance, for example. In this case, boundary conditionacquisition part 40 may store a predetermined boundary condition insteadof acquiring the boundary condition from the cam curve generationcondition received by input receiver 10.

Boundary condition acquisition part 40 may also generate the boundarycondition from the out-section cam curve stored in cam curve storage 80instead of acquiring the boundary condition from the cam curvegeneration condition received by input receiver 10. In this case,boundary condition acquisition part 40 may calculate a position of thedriven shaft, speed of the driven shaft, and acceleration of the drivenshaft at an end of a non-application cam curve of a non-applicationsection adjacent in front of the application section as a position ofthe driven shaft, speed of the driven shaft, and acceleration of thedriven shaft at the start of the application section, respectively, forexample. Alternatively, a position of the driven shaft, speed of thedriven shaft, and acceleration of the driven shaft at a start of anon-application cam curve of a non-application section adjacent behindthe application section may be calculated as a position of the drivenshaft, speed of the driven shaft, and acceleration of the driven shaftat the end of the application section, respectively, for example.

Cam curve generator 70 generates a cam curve in the application sectionbased on the boundary condition acquired by boundary conditionacquisition part 40, the cam curve satisfying the boundary condition. Atthis time, cam curve generator 70 generates the cam curve that allows aposition of the driven shaft, speed of the driven shaft, andacceleration of the driven shaft to be continuous at each of boundariesof the multiple sub-sections based on the information indicating thesub-sections output from section divider 60.

A specific example of the cam curve generated by cam curve generator 70will be described later.

Cam curve storage 80 stores the cam curve generated by cam curvegenerator 70. As described above, cam curve storage 80 stores theout-section cam curve acquired or generated by section setting part 50.

Cam curve storage 80 may store a cam curve or an out-section cam curveitself. When the cam curve or the out-section cam curve is a functionthat defines a relationship between a position of the main shaft and aposition of the driven shaft, cam curve storage 80 may store factor dataon the function. When the cam curve or the out-section cam curve is adata table that defines the relationship between a position of the mainshaft and a position of the driven shaft, cam curve storage 80 may storea numerical value of data constituting the data table.

Driven shaft command generator 90 acquires the main shaft position, andgenerates and outputs a command to the driven shaft based on the mainshaft position, and the cam curve or the out-section cam curve stored incam curve storage 80.

<Operation>

Cam curve generating device 100 having the above configuration performsa first cam curve generation processing of generating a cam curve, forexample.

Hereinafter, the first cam curve generation processing to be performedby cam curve generating device 100 will be described with reference tothe drawings.

FIG. 2 is a flowchart of the first cam curve generation processing.

The first cam curve generation processing is started when cam curvegenerating device 100 is operated to start the first cam curvegeneration processing, for example.

When the first cam curve generation processing is started, sectioninformation acquisition part 20 acquires section information (step S10).More specifically, section information acquisition part 20 acquires thesection information from the cam curve generation condition received byinput receiver 10. When the section information is acquired by sectioninformation acquisition part 20, section setting part 50 sets anapplication section and a non-application section based on the sectioninformation (step S20).

Next, division condition acquisition part 30 acquires a divisioncondition (step S30). More specifically, division condition acquisitionpart 30 acquires the division condition from the cam curve generationcondition received by input receiver 10. When the division condition isacquired by division condition acquisition part 30, section divider 60divides the application section into multiple sub-sections based on thedivision condition, the multiple sub-sections satisfying the divisioncondition (step S40). Then, section divider 60 outputs informationindicating each sub-section to cam curve generator 70.

Subsequently, boundary condition acquisition part 40 acquires a boundarycondition (step S50). More specifically, boundary condition acquisitionpart 40 acquires the boundary condition from the cam curve generationcondition received by input receiver 10. When the boundary condition isacquired by boundary condition acquisition part 40, cam curve generator70 generates a cam curve in the application section based on theboundary condition acquired by boundary condition acquisition part 40,the cam curve satisfying the boundary condition. At this time, cam curvegenerator 70 generates the cam curve that allows a position of thedriven shaft, speed of the driven shaft, and acceleration of the drivenshaft to be continuous at each of boundaries of the multiplesub-sections based on the information indicating the sub-sections outputfrom section divider 60 (step S60).

When processing in step S60 ends, cam curve generating device 100 endsthe first cam curve generation processing.

Specific Example

Hereinafter, specific processing contents of the processing in step S60will be described with reference to the drawings.

FIG. 3 is a waveform diagram illustrating an example of the cam curvegenerated by cam curve generator 70 in the processing in step S60.

FIG. 3 includes a waveform chart in an upper row, the waveform chartshowing a cam curve that defines a relationship between a position ofthe main shaft and a position of the driven shaft. The waveform chart inthe upper row has the horizontal axis (x-axis) indicating position x ofthe main shaft, and the vertical axis (y-axis) indicating position y ofthe driven shaft.

FIG. 3 includes a waveform chart in a middle row, the waveform chartshowing a cam curve that defines a relationship between a position ofthe main shaft and speed of the driven shaft. The waveform chart in themiddle row has the horizontal axis (x-axis) indicating position x of themain shaft, and the vertical axis (v-axis) indicating speed v of thedriven shaft.

FIG. 3 includes a waveform chart in a lower row, the waveform chartshowing a cam curve that defines a relationship between a position ofthe main shaft and acceleration of the driven shaft. The waveform chartin the lower row has the horizontal axis (x-axis) indicating position xof the main shaft, and the vertical axis (a-axis) indicatingacceleration a of the driven shaft.

FIG. 3 includes the waveform chart in the upper row, the waveform chartin the middle row, and the waveform chart in the lower row, each ofwhich has a first section from position X₀ to position X₅ of the mainshaft, the first section being set as an application section, a secondsection from position X_(s) to position X₀ of the main shaft, the secondsection being set as a first non-application section, and a thirdsection from position X₅ to position X_(c) of the main shaft, the thirdsection being set as a second non-application section. That is, the camcurve in the application section from position X₀ to position X₅ of themain shaft is the cam curve generated by cam curve generator 70 in theprocessing in step S60.

For example, the waveform chart in the upper row of FIG. 3 shows theapplication section with boundaries that are indicated by coordinatevalues of (X₀, Y₀) and (X₅, Y₅).

The application section has the start under a boundary condition set tocoordinate values equal to those at the end of the cam curve in thefirst non-application section, i.e., position Y₀ of the driven shaft,speed V₀ of the driven shaft, and acceleration A₀ of the driven shaft.The application section also has the end under a boundary condition setto coordinate values equal to those at the start of the cam curve in thesecond non-application section, i.e., position Y₅ of the driven shaft,speed V₅ of the driven shaft, and acceleration A₅ of the driven shaft.

The example illustrated in FIG. 3 shows the application section that isdivided into five sub-sections of a first sub-section, a secondsub-section, a third sub-section, a fourth sub-section, and a fifthsub-section that are continuous in an ascending order of the position ofthe main shaft. The five sub-sections have boundaries indicated bypositions of the main shaft, the positions having respective coordinatevalues of X₀, X₁, X₂, X₃, X₄, X₅.

The first sub-section, the third sub-section, and the fifth sub-sectionare each set as a sub-section of a type in which acceleration of thedriven shaft monotonically increases or monotonically decreases. Thesecond sub-section and the fourth sub-section are each set as asub-section of a type in which the acceleration of the driven shaft doesnot change.

The processing in step S60 allows cam curve generator 70 to defineacceleration a of the driven shaft in the first sub-section to the fifthsub-section by a function a(x) of position x of the main shaft shown inExpression 1 below. Expression 1 shows K_(iT) (i=1, 3, 5) and K_(i2)(i=1, 2, 3, 4, 5) that are each a coefficient.

$\begin{matrix}{\left( {{Expression}1} \right)} &  \\{{{\Delta x} = {x - X_{i - 1}}},{{\Delta X_{i}} = {X_{i} - X_{i - 1}}}} & \left\lbrack {{Expression}1} \right\rbrack\end{matrix}$ and $\begin{matrix}{{a(x)} = \left\{ \begin{matrix}{{a_{1}(x)} = {K_{12} + {K_{1T}\sin\left( {\pi\frac{\Delta x}{2\Delta X_{1}}} \right)}}} & {,{X_{0} \leq x \leq X_{1}}} \\{{a_{3}(x)} = {K_{32} + {K_{3T}\cos\left( {\pi\frac{\Delta x}{\Delta X_{3}}} \right)}}} & {,{X_{2} \leq x \leq X_{3}}} \\{{a_{5}(x)} = {K_{52} + {K_{5T}\cos\left( {\pi\frac{\Delta x}{2\Delta X_{5}}} \right)}}} & {,{X_{4} \leq x \leq X_{5}}} \\{{a_{i}(x)} = K_{12}} & {,{X_{i - 1} \leq x \leq X_{i}},{i = 2},4}\end{matrix} \right.} & \left\lbrack {{Expression}2} \right\rbrack\end{matrix}$

Expression 1 defines acceleration a of the driven shaft in the firstsub-section with a sine wave with a waveform from the start to the endof the first sub-section, the waveform transitioning in phase from 0 toπ×½. That is, the waveform from the start to the end of the firstsub-section of acceleration a of the driven shaft in the firstsub-section has a shape of a ¼ period part up to the apex of the sinewave. The term, “apex”, used herein includes both a positive apex and anegative apex. Acceleration a of the driven shaft in the thirdsub-section is defined with a sine wave with a waveform from the startto the end of the third sub-section, the waveform transitioning in phasefrom π×½ to π×3/2. That is, the waveform from the start to the end ofthe third sub-section of acceleration a of the driven shaft in the thirdsub-section has a shape of a half period part from the apex of the sinewave. Acceleration a of the driven shaft in the fifth sub-section isdefined with a sine wave with a waveform from the start to the end ofthe fifth sub-section, the waveform transitioning in phase from π×3/2 toπ×2. That is, the waveform from the start to the end of the fifthsub-section of acceleration a of the driven shaft in the fifthsub-section has a shape of a ¼ period part from the apex of the sinewave.

These functions are examples, and as long as acceleration a of thedriven shaft monotonically increases or monotonically decreases in thefirst sub-section, the third sub-section, and the fifth sub-section, thefunctions in these sections may be any function. For example,acceleration a of the driven shaft in the first sub-section may bedefined with a sine wave with a waveform from the start to the end ofthe first sub-section, the waveform transitioning in phase from π toπ×3/2. That is, the waveform from the start to the end of the firstsub-section of acceleration a of the driven shaft in the firstsub-section may have a shape of a ¼ period part up to the apex of thesine wave. Acceleration a of the driven shaft in the third sub-sectionmay be defined with a sine wave with a waveform from the start to theend of the third sub-section, the waveform transitioning in phase fromπ×(−½) to π×½. That is, the waveform from the start to the end of thethird sub-section of acceleration a of the driven shaft in the thirdsub-section may have a shape of a half period part from the apex of thesine wave. Acceleration a of the driven shaft in the fifth sub-sectionmay be defined with a sine wave with a waveform from the start to theend of the fifth sub-section, the waveform transitioning in phase fromπ×½ to π. That is, the waveform from the start to the end of the fifthsub-section of acceleration a of the driven shaft in the fifthsub-section may have a shape of a ¼ period part from the apex of thesine wave.

When Expression 1 is integrated at position x of the main shaft,function v(x) defining speed v of the driven shaft in the firstsub-section to the fifth sub-section is obtained as Expression 2 below.Expression 2 shows K_(i1) (i=1, 2, 3, 4, 5) that is an integral constantand a coefficient.

$\begin{matrix}{\left( {{Expression}2} \right)} &  \\{{{\Delta x} = {x - X_{i - 1}}},{{\Delta X_{i}} = {X_{i} - X_{i - 1}}}} & \left\lbrack {{Expression}3} \right\rbrack\end{matrix}$ and $\begin{matrix}{{v(x)} = \left\{ \begin{matrix}{{v_{1}(x)} = {K_{11} + {K_{12}\Delta x} - {K_{1T}\frac{2\Delta X_{1}}{\pi}\cos\left( {\pi\frac{\Delta x}{2\Delta X_{1}}} \right)}}} & {,{X_{0} \leq x \leq X_{1}}} \\{{v_{3}(x)} = {K_{31} + {K_{32}\Delta x} - {K_{3T}\frac{\Delta X_{3}}{\pi}\sin\left( {\pi\frac{\Delta x}{\Delta X_{3}}} \right)}}} & {,{X_{2} \leq x \leq X_{3}}} \\{{v_{5}(x)} = {K_{51} + {K_{52}\Delta x} - {K_{5T}\frac{2\Delta X_{5}}{\pi}\sin\left( {\pi\frac{\Delta x}{2\Delta X_{5}}} \right)}}} & {,{X_{4} \leq x \leq X_{5}}} \\{{v_{i}(x)} = {K_{i1} + {K_{i2}\Delta x}}} & {,{X_{i - 1} \leq x \leq X_{i}},{i = 2},4}\end{matrix} \right.} & \left\lbrack {{Expression}4} \right\rbrack\end{matrix}$

When Expression 2 is integrated at position x of the main shaft,function y(x) defining position y of the driven shaft in the firstsub-section to the fifth sub-section is obtained as Expression 3 below.Expression 3 shows K_(i0) (i=1, 2, 3, 4, 5) that is an integral constantand a coefficient.

$\begin{matrix}{\left( {{Expression}3} \right)} &  \\{{{\Delta x} = {x - X_{i - 1}}},{{\Delta X_{i}} = {X_{i} - X_{i - 1}}}} & \left\lbrack {{Expression}5} \right\rbrack\end{matrix}$ and $\begin{matrix}{{y(x)} = \left\{ \begin{matrix}{{y_{1}(x)} = {K_{10} + {K_{11}\Delta x} + {\frac{1}{2}K_{12}\Delta x^{2}} - {K_{1T}\frac{4\Delta X_{1}^{2}}{\pi^{2}}\sin\left( {\pi\frac{\Delta x}{2\Delta X_{1}}} \right)}}} & {,{X_{0} \leq x \leq X_{1}}} \\{{y_{3}(x)} = {K_{30} + {K_{31}\Delta x} + {\frac{1}{2}K_{32}\Delta x^{2}} - {K_{3T}\frac{\Delta X_{3}^{2}}{\pi^{2}}\cos\left( {\pi\frac{\Delta x}{\Delta X_{3}}} \right)}}} & {,{X_{2} \leq x \leq X_{3}}} \\{{y_{5}(x)} = {K_{50} + {K_{51}\Delta x} + {\frac{1}{2}K_{52}\Delta x^{2}} - {K_{5T}\frac{4\Delta X_{5}^{2}}{\pi^{2}}\cos\left( {\pi\frac{\Delta x}{2\Delta X_{5}}} \right)}}} & {,{X_{4} \leq x \leq X_{5}}} \\{{y_{i}(x)} = {K_{i0} + {K_{i1}\Delta x} + {\frac{1}{2}K_{12}\Delta x^{2}}}} & {,{X_{i - 1} \leq x \leq X_{i}},{i = 2},4}\end{matrix} \right.} & \left\lbrack {{Expression}6} \right\rbrack\end{matrix}$

Expression 1, Expression 2, and Expression 3 include K_(iT) (i=1, 3, 5),K_(i2) (i=1, 2, 3, 4, 5), K_(i1) (i=1, 2, 3, 4, 5), and K_(i0) (i=1, 2,3, 4, 5), which are each a coefficient of a cam curve or a factorthereof. Although being unknown until the processing in step S60 isperformed, these are calculated by cam curve generator 70 in theprocessing in step S60.

The examples of Expression 1, Expression 2, and Expression 3 haveeighteen unknowns as described above, so that as many conditions as theunknowns, i.e., eighteen conditions, are required for calculating theunknowns. As described below, the processing in step S60 allows camcurve generator 70 to calculate the eighteen unknowns based on a totalof eighteen conditions including six boundary conditions at the startand end of the application section, and twelve continuous conditions atboundaries of each sub-section, including a position of the drivenshaft, speed of the driven shaft, and acceleration of the driven shaft.

Boundary conditions Y₀, V₀, and A₀ at the start of the applicationsection illustrated in FIG. 3 , i.e., at position X₀ of the main shaftin the first sub-section, are substituted into Expression 1, Expression2, and Expression 3 to obtain three equations shown in Expression 4below.

$\begin{matrix}\left( {{Expression}4} \right) &  \\\begin{matrix}{A_{0} = {\left. {a_{1}\left( X_{0} \right)}\rightarrow A_{0} \right. = K_{12}}} \\{V_{0} = {\left. {v_{1}\left( X_{0} \right)}\rightarrow V_{0} \right. = {K_{11} - {K_{1T}\frac{2\Delta X_{1}}{\pi}}}}} \\{Y_{0} = {\left. {y_{1}\left( X_{0} \right)}\rightarrow Y_{0} \right. = K_{10}}}\end{matrix} & \left\lbrack {{Expression}7} \right\rbrack\end{matrix}$

Boundary conditions Y₅, V₅, A₅ at the end of the application sectionillustrated in FIG. 3 , i.e., at position X₅ of the main shaft in thefifth sub-section, are substituted into Expression 1, Expression 2, andExpression 3 to obtain three equations shown in Expression 5 below.

$\begin{matrix}{\left( {{Expression}5} \right)} &  \\{{\Delta X_{5}} = {X_{5} - X_{4}}} & \left\lbrack {{Expression}8} \right\rbrack\end{matrix}$ and $\begin{matrix}\begin{matrix}{A_{5} = {\left. {a_{5}\left( X_{5} \right)}\rightarrow A_{5} \right. = {K_{52} + K_{5T}}}} \\{V_{5} = {\left. {v_{5}\left( X_{5} \right)}\rightarrow V_{5} \right. = {K_{51} + {K_{52}\Delta X_{5}}}}} \\{Y_{5} = {\left. {y_{5}\left( X_{5} \right)}\rightarrow Y_{5} \right. = {K_{50} + {K_{51}\Delta X_{5}} + {\frac{1}{2}K_{52}\Delta X_{5}^{2}} - {K_{5T}\frac{4\Delta X_{5}^{2}}{\pi^{2}}}}}}\end{matrix} & \left\lbrack {{Expression}9} \right\rbrack\end{matrix}$

When a condition that acceleration a of the driven shaft is continuousat the boundary of each sub-section illustrated in FIG. 3 is given toExpression 1, four equations shown in Expression 6 below are obtained.

(Expression 6)

ΔX _(i) =X _(i) −X _(i−1)  [Expression 10]

and

a ₁(X ₁)=a ₂(X ₁)→K ₁₂ +K _(1T) =K ₂₂

a ₂(X ₂)=a ₃(X ₂)→K ₂₂ =K ₃₂ +K _(3T)

a ₃(X ₃)=a ₄(X ₃)→K ₃₂ −K _(3T) =K ₄₂

a ₄(X ₄)=a ₅(X ₄)→K ₄₂ =K ₅₂ +K _(5T)  [Expression 11]

When a condition that speed v of the driven shaft is continuous at theboundary of each sub-section illustrated in FIG. 3 is given toExpression 2, four equations shown in Expression 7 below are obtained.

(Expression 7)

ΔX _(i) =X _(i) −X _(i−1)  [Expression 12]

and

v ₁(X ₁)=v ₂(X ₁)→K ₁₁ +K ₁₂ ΔX ₁ =K ₂₁

v ₂(X ₂)=v ₃(X ₂)→K ₂₁ +K ₂₂ ΔX ₂ =K ₃₁

v ₃(X ₃)=v ₄(X ₃)→K ₃₁ +K ₃₂ ΔX ₃ =K ₄₁

v ₄(X ₄)=v ₄(X ₄)→K ₄₁ +K ₄₂ ΔX ₄ =K ₅₁  [Expression 13]

When a condition that position y of the driven shaft is continuous atthe boundary of each sub-section illustrated in FIG. 3 is given toExpression 3, four equations shown in Expression 8 below are obtained.

$\begin{matrix}{\left( {{Expression}8} \right)} &  \\{{\Delta X_{i}} = {X_{i} - X_{i - 1}}} & \left\lbrack {{Expression}14} \right\rbrack\end{matrix}$ and $\begin{matrix}\begin{matrix}{{y_{1}\left( X_{1} \right)} = {\left. {y_{2}\left( X_{1} \right)}\rightarrow{K_{10} + {K_{11}\Delta X_{1}} + {\frac{1}{2}K_{12}\Delta X_{1}^{2}} - {K_{1T}\frac{4\Delta X_{1}^{2}}{\pi^{2}}}} \right. = K_{20}}} \\{{y_{2}\left( X_{2} \right)} = {\left. {y_{3}\left( X_{2} \right)}\rightarrow{K_{20} + {K_{21}\Delta X_{2}} + {\frac{1}{2}K_{22}\Delta X_{2}^{2}}} \right. = {K_{30} - {K_{3T}\frac{\Delta X_{3}^{2}}{\pi^{2}}}}}} \\{{y_{3}\left( X_{3} \right)} = {\left. {y_{4}\left( X_{3} \right)}\rightarrow{K_{30} + {K_{31}\Delta X_{3}} + {\frac{1}{2}K_{32}\Delta X_{3}^{2}} + {K_{3T}\frac{\Delta X_{3}^{2}}{\pi^{2}}}} \right. = K_{40}}} \\{{y_{4}\left( X_{4} \right)} = {\left. {y_{5}\left( X_{4} \right)}\rightarrow{K_{40} + {K_{41}\Delta X_{4}} + {\frac{1}{2}K_{42}\Delta X_{4}^{2}}} \right. = {K_{50} - {K_{5T}\frac{4\Delta X_{5}^{2}}{\pi^{2}}}}}}\end{matrix} & \left\lbrack {{Expression}15} \right\rbrack\end{matrix}$

The processing in step S60 allows cam curve generator 70 to solveeighteen simultaneous equations defined by the eighteen equations shownin Expression 4 to Expression 8 to calculate unknowns K_(iT) (i=1, 3,5), K_(i2) (i=1, 2, 3, 4, 5), K_(i1) (i=1, 2, 3, 4, 5), and K_(i0) (i=1,2, 3, 4, 5).

Cam curve generator 70 may calculate corresponding one of the unknownsby solving the eighteen simultaneous equations each time a cam curve isgenerated, or may preliminarily store a calculation formula obtained bymodifying the eighteen simultaneous equations and calculate each of theunknowns based on the calculation formula stored.

Next, an example of an effect obtained by cam curve generating device100 will be described using an example of a cam curve illustrated inFIG. 3 .

The cam curve in the application section in FIG. 3 has a start indicatedby position X₀ of the main shaft, the start having position Y₀ of thedriven shaft, speed V₀ of the driven shaft, and acceleration A₀ of thedriven shaft, which are equal to those at an end of the cam curve of thefirst non-application section adjacent to the application section. Thecam curve also has an end indicated by position X₅ of the main shaft,the end having position Y₅ of the driven shaft, speed V₅ of the drivenshaft, and acceleration A₅ of the driven shaft, which are equal to thoseat a start of the cam curve of the second non-application sectionadjacent to the application section. As described above, cam curvegenerating device 100 generates the cam curve of the applicationsection, the cam curve having the start and the end that are each in ashape smoothly connected to the adjacent non-application section. As aresult, cam curve generating device 100 enables providing electronic camcontrol in which speed of the driven shaft and acceleration of thedriven shaft do not change rapidly near the boundary between theapplication section and the non-application section.

The cam curve in the application section in FIG. 3 has a secondsub-section and a fourth sub-section in which acceleration a of thedriven shaft is constant, and position y of the driven shaft, speed v ofthe driven shaft, and acceleration a of the driven shaft are eachcontinuous at boundaries of each sub-section. As a result, cam curvegenerating device 100 enables providing electronic cam control thatreduces fluctuation in speed of the driven shaft and acceleration of thedriven shaft in the application section as compared with electronic camcontrol using a cam curve generated using a fifth-order curve as in theconventional technique described in PTL 1.

Cam curve generating device 100 can generate a wide variety of camcurves because a length of each sub-section can be appropriately set. Asa result, cam curve generating device 100 enables providing electroniccam control of a wide variety of acceleration and deceleration patternsas compared with the electronic cam control using the cam curvegenerated using the fifth-order curve as in the conventional techniquedescribed in PTL 1.

FIG. 4 is a waveform diagram illustrating another example of the camcurve generated by cam curve generator 70 in the processing in step S60.

FIG. 4 includes a waveform chart in an upper row, the waveform chartshowing a cam curve that defines a relationship between a position ofthe main shaft and a position of the driven shaft. The waveform chart inthe upper row has the horizontal axis (x-axis) indicating position x ofthe main shaft, and the vertical axis (y-axis) indicating position y ofthe driven shaft.

FIG. 4 includes a waveform chart in a middle row, the waveform chartshowing a cam curve that defines a relationship between a position ofthe main shaft and speed of the driven shaft. The waveform chart in themiddle row has the horizontal axis (x-axis) indicating position x of themain shaft, and the vertical axis (v-axis) indicating speed v of thedriven shaft.

FIG. 4 includes a waveform chart in a lower row, the waveform chartshowing a cam curve that defines a relationship between a position ofthe main shaft and acceleration of the driven shaft. The waveform chartin the middle row has the horizontal axis (x-axis) indicating position xof the main shaft, and the vertical axis (a-axis) indicatingacceleration a of the driven shaft.

FIG. 4 includes the waveform chart in the upper row, the waveform chartin the middle row, and the waveform chart in the lower row, each ofwhich has a first section from position X₀ to position X₇ of the mainshaft, the first section being set as an application section, a secondsection from position X_(s) to position X₀ of the main shaft, the secondsection being set as a first non-application section, and a thirdsection from position X₇ to position X_(e) of the main shaft, the thirdsection being set as a second non-application section. That is, the camcurve in the application section from position X₀ to position X₇ of themain shaft is the cam curve generated by cam curve generator 70 in theprocessing in step S60.

The application section has the start under a boundary condition set tocoordinate values equal to those at the end of the cam curve in thefirst non-application section, i.e., position Y₀ of the driven shaft,speed V₀ of the driven shaft, and acceleration A₀ of the driven shaft.The application section also has the end under a boundary condition setto coordinate values equal to those at the start of the cam curve in thesecond non-application section, i.e., position Y₇ of the driven shaft,speed V₇ of the driven shaft, and acceleration A; of the driven shaft.

The example illustrated in FIG. 4 shows the application section that isdivided into seven sub-sections of a first sub-section, a secondsub-section, a third sub-section, a fourth sub-section, and a fifthsub-section, a sixth sub-section, a seventh sub-section that arecontinuous in an ascending order of the position of the main shaft. Theseven sub-sections have boundaries indicated by positions of the mainshaft, the positions having respective coordinate values of X₀, X₁, X₂,X₃, X₄, X₅, X₆, X₇.

The first sub-section, the third sub-section, the fifth sub-section, andthe seventh sub-section are each set as a sub-section of a type in whichacceleration of the driven shaft monotonically increases ormonotonically decreases. The second sub-section and the sixthsub-section are each set as a sub-section of a type in which theacceleration of the driven shaft does not change and has a value otherthan zero. The fourth sub-section is defined as a sub-section of a typein which the acceleration of the driven shaft does not change and has avalue of zero.

The processing in step S60 allows cam curve generator 70 to defineacceleration a of the driven shaft in the first sub-section to theseventh sub-section by a function a(x) of position x of the main shaftshown in Expression 9 below. Expression 9 shows K_(i3) (i=1, 3, 5, 7)and K_(i2) (i=1, 2, 3, 5, 6, 7) that are each a coefficient.

$\begin{matrix}{\left( {{Expression}9} \right)} &  \\{{\Delta x} = {x - X_{i - 1}}} & \left\lbrack {{Expression}16} \right\rbrack\end{matrix}$ and $\begin{matrix}{{a(x)} = \left\{ \begin{matrix}{{a_{i}(x)} = {K_{i2} + {K_{i3}\Delta x}}} & {,{X_{i - 1} \leq x \leq X_{i}},{i = 1},3,5,7} \\{{a_{i}(x)} = K_{i2}} & {,{X_{i - 1} \leq x \leq X_{i}},{i = 2},6} \\{{a_{4}(x)} = 0} & {,{X_{3} \leq x \leq X_{4}}}\end{matrix} \right.} & \left\lbrack {{Expression}17} \right\rbrack\end{matrix}$

Expression 9 shows acceleration a of the driven shaft in the firstsub-section, the third sub-section, the fifth sub-section, and theseventh sub-section, acceleration a having a waveform that is from thestart to the end of each sub-section and defined by a linear polynomialof position x of the main shaft. These functions are examples, and aslong as acceleration a of the driven shaft monotonically increases ormonotonically decreases in the first sub-section, the third sub-section,the fifth sub-section, and the seventh sub-section, the functions inthese sections may be any function.

When Expression 9 is integrated at position x of the main shaft,function v(x) defining speed v of the driven shaft in the firstsub-section to the seventh sub-section is obtained as Expression 10below. Expression 10 shows K_(i1) (i=1, 2, 3, 4, 5, 6, 7) that is anintegral constant and a coefficient.

$\begin{matrix}{\left( {{Expression}10} \right)} &  \\{{\Delta x} = {x - X_{i - 1}}} & \left\lbrack {{Expression}18} \right\rbrack\end{matrix}$ and $\begin{matrix}{{v(x)} = \left\{ \begin{matrix}{{v_{i}(x)} = {K_{i1} + {K_{i2}\Delta x} + {\frac{1}{2}K_{i3}\Delta x^{2}}}} & {,{X_{i - 1} \leq x \leq X_{i}},{i = 1},3,5,7} \\{{v_{i}(x)} = {K_{i1} + {K_{i2}\Delta x}}} & {,{X_{i - 1} \leq x \leq X_{i}},{i = 2},6} \\{{v_{4}(x)} = K_{41}} & {,{X_{3} \leq x \leq X_{4}}}\end{matrix} \right.} & \left\lbrack {{Expression}19} \right\rbrack\end{matrix}$

When Expression 10 is integrated at position x of the main shaft,function y(x) defining position y of the driven shaft in the firstsub-section to the seventh sub-section is obtained as Expression 11below. Expression 11 shows K_(i0) (i=1, 2, 3, 4, 5, 6, 7) that is anintegral constant and a coefficient.

$\begin{matrix}{\left( {{Expression}11} \right)} &  \\{{\Delta x} = {x - X_{i - 1}}} & \left\lbrack {{Expression}20} \right\rbrack\end{matrix}$ and $\begin{matrix}{{y(x)} = \left\{ \begin{matrix}{{y_{i}(x)} = {K_{i0} + {K_{i1}\Delta x} + {\frac{1}{2}K_{i2}\Delta x^{2}} + {\frac{1}{6}K_{i3}\Delta x^{2}}}} & {,{X_{i - 1} \leq x \leq X_{i}},{i = 1},3,5,7} \\{{y_{i}(x)} = {K_{i0} + {K_{i1}\Delta x} + {\frac{1}{2}K_{i2}\Delta x^{2}}}} & {,{X_{i - 1} \leq x \leq X_{i}},{i = 2},6} \\{{y_{4}(x)} = {K_{40} + {K_{41}\Delta x}}} & {,{X_{3} \leq x \leq X_{4}}}\end{matrix} \right.} & \left\lbrack {{Expression}19} \right\rbrack\end{matrix}$

Expression 9, Expression 10, and Expression 11 include K_(i3) (i=1, 3,5, 7), K_(i2) (i=1, 2, 3, 5, 6, 7), K_(i1) (i=1, 2, 3, 4, 5, 6, 7), andK_(i0) (i=1, 2, 3, 4, 5, 6, 7), which are each a coefficient of a camcurve or a factor thereof. Although being unknown until the processingin step S60 is performed, these are calculated by cam curve generator 70in the processing in step S60.

The examples of Expression 9, Expression 10, and Expression 11 havetwenty-four unknowns as described above, so that as many conditions asthe unknowns, i.e., twenty-four conditions, are required for calculatingthe unknowns. As described below, the processing in step S60 allows camcurve generator 70 to calculate the twenty-four unknowns based on atotal of twenty-four conditions including six boundary conditions at thestart and end of the application section, and eighteen continuousconditions at boundaries of each sub-section, including a position ofthe driven shaft, speed of the driven shaft, and acceleration of thedriven shaft.

Boundary conditions Y₀, V₀, and A₀ at the start of the applicationsection illustrated in FIG. 4 , i.e., at position X₀ of the main shaftin the first sub-section, are substituted into Expression 9, Expression10, and Expression 11 to obtain three equations shown in Expression 12below.

(Expression 12)

A ₀ =a ₁(X ₀)→A ₀ =K ₁₂

V ₀ =v ₁(X ₀)→V ₀ =K ₁₁

Y ₀ =y ₁(X ₀)→Y ₀ =K ₁₀  [Expression 22]

Boundary conditions Y₇, V₇, A₇ at the end of the application sectionillustrated in FIG. 4 , i.e., at position X₇ of the main shaft in theseventh sub-section, are substituted into Expression 1, Expression 2,and Expression 3 to obtain three equations shown in Expression 13 below.

(Expression 13)

ΔX ₇ =X ₇ −X ₆  [Expression 23]

and

A ₇ =a ₇(X ₇)→A ₇ =K ₇₂ +K ₇₃ ΔX ₇

V ₇ =v ₇(X ₇)→V ₇ =K ₇₁ +K ₇₂ ΔX ₇+½K ₇₃ ΔX ₇ ²

Y ₇ =y ₇(X ₇)→Y ₇ =K ₇₀ +K ₇₁ ΔX ₇+½K ₇₂ ΔX ₇ ²+⅙K ₇₃ ΔX ₇³  [Expression 24]

When a condition that acceleration a of the driven shaft is continuousat the boundary of each sub-section illustrated in FIG. 4 is given toExpression 9, six equations shown in Expression 14 below are obtained.

(Expression 14)

ΔX _(i) =X _(i) −X _(i−1)  [Expression 25]

and

a ₁(X ₁)=a ₂(X ₁)→K ₁₂ +K ₁₃ ΔX ₁ =K ₂₂

a ₂(X ₂)=a ₃(X ₂)→K ₂₂ =K ₃₂

a ₃(X ₃)=a ₄(X ₃)→K ₃₂ +K ₃₃ ΔX ₃=0

a ₄(X ₄)=a ₅(X ₄)→0=K ₅₂

a ₅(X ₅)=a ₆(X ₅)→K ₅₂ +K ₅₃ ΔX ₅ =K ₆₂

a ₆(X ₆)=a ₇(X ₆)→K ₆₂ =K ₇₂  [Expression 26]

When a condition that speed v of the driven shaft is continuous at theboundary of each sub-section illustrated in FIG. 4 is given toExpression 10, six equations shown in Expression 15 below are obtained.

(Expression 15)

ΔX _(i) =X _(i) −X _(i−1)  [Expression 27]

and

v ₁(X ₁)=v ₂(X ₁)→K ₁₁ +K ₁₂ ΔX ₁+½K ₁₃ ΔX ₁ ² =K ₂₁

v ₂(X ₂)=v ₃(X ₂)→K ₂₁ +K ₂₂ ΔX ₂ =K ₃₁

v ₃(X ₃)=v ₄(X ₃)→K ₃₁ +K ₃₂ ΔX ₃+½K ₃₃ ΔX ₃ ² =K ₄₁

v ₄(X ₄)=v ₅(X ₄)→K ₄₁ =K ₅₁

v ₅(X ₅)=v ₆(X ₅)→K ₅₁ +K ₅₂ ΔX ₅+½K ₅₃ ΔX ₅ ² =K ₆₁

v ₆(X ₆)=v ₇(X ₆)→K ₆₁ +K ₆₂ ΔX ₆ =K ₇₁  [Expression 28]

When a condition that position y of the driven shaft is continuous atthe boundary of each sub-section illustrated in FIG. 4 is given toExpression 11, six equations shown in Expression 16 below are obtained.

(Expression 16)

ΔX _(i) =X _(i) −X _(i−1)  [Expression 29]

and

y ₁(X ₁)=y ₂(X ₁)→K ₁₀ +K ₁₁ ΔX ₁+½K ₁₂ ΔZ ₁ ²+⅙K ₁₃ ΔX ₁ ³ =K ₂₀

y ₂(X ₂)=y ₃(X ₂)→K ₂₀ +K ₂₁ ΔX ₂+½K ₂₂ ΔX ₂ ² =K ₃₀

y ₃(X ₃)=y ₄(X ₃)→K ₃₀ +K ₃₁ ΔX ₃+½K ₃₂ ΔX ₃ ²+⅙K ₃₃ ΔX ₃ ³ =K ₄₀

y ₄(X ₄)=y ₅(X ₄)→K ₄₀ +K ₄₁ ΔX ₄ =K ₅₀

y ₅(X ₅)=y ₆(X ₅)→K ₅₀ +K ₅₁ ΔX ₅+½K ₅₂ ΔX ₅ ²+⅙K ₅₃ ΔX ₅ ³ =K ₆₀

y ₆(X ₆)=y ₇(X ₆)→K ₆₀ +K ₆₁ ΔX ₆+½K ₆₂ ΔX ₆ ² =K ₇₀  [Expression 30]

The processing in step S60 allows cam curve generator 70 to solvetwenty-four simultaneous equations defined by the twenty-four equationsshown in Expression 12 to Expression 16 to calculate unknowns K_(i3)(i=1, 3, 5, 7), K_(i2) (i=1, 2, 3, 5, 6, 7), K_(i1) (i=1, 2, 3, 4, 5, 6,7), and K_(i0) (i=1, 2, 3, 4, 5, 6, 7).

Cam curve generator 70 may calculate corresponding one of the unknownsby solving the twenty-four simultaneous equations each time a cam curveis generated, or may preliminarily store a calculation formula obtainedby modifying the twenty-four simultaneous equations and calculate eachof the unknowns based on the calculation formula stored.

Next, an example of an effect obtained by cam curve generating device100 other than the example of the effect, which is obtained by cam curvegenerating device 100 and described using the example of the cam curveillustrated in FIG. 3 , will be described using the example of the camcurve illustrated in FIG. 4 .

The cam curve in the application section in FIG. 4 has a fourthsub-section in which speed v of the driven shaft is constant, andposition y of the driven shaft, speed v of the driven shaft, andacceleration a of the driven shaft are each continuous at boundaries ofeach sub-section. As a result, cam curve generating device 100 enablesproviding electronic cam control that reduces fluctuation in speed ofthe driven shaft and acceleration of the driven shaft in the applicationsection as compared with electronic cam control using a cam curvegenerated using a fifth-order curve as in the conventional techniquedescribed in PTL 1.

<Consideration>

Cam curve generating device 100 causes the driven shaft to be determinedin position, speed, and acceleration at the start and the end of theapplication section according to boundary conditions acquired. As aresult, cam curve generating device 100 enables generating a cam curvehaving a smooth connection to an out-section cam curve outside theapplication section by appropriately setting a boundary condition to beacquired.

Cam curve generating device 100 determines speed of the driven shaft andacceleration of the driven shaft in the application section according toa division condition acquired. As a result, cam curve generating device100 enables generating a cam curve that reduces fluctuations in speed ofthe driven shaft and in acceleration of the driven shaft in theapplication section by appropriately setting a division condition to beacquired.

Thus, cam curve generating device 100 enables generating a cam curvethat reduces fluctuations in speed of the driven shaft and inacceleration of the driven shaft in an application section while beingsmoothly connected to an out-section cam curve.

Second Exemplary Embodiment

Hereinafter, a cam curve generation system according to a secondexemplary embodiment will be described in which a configuration ispartially different from the configuration of cam curve generationsystem 1 according to the first exemplary embodiment.

<Configuration>

FIG. 5 is a block diagram illustrating an example of a configuration ofcam curve generation system 1A according to a second exemplaryembodiment.

As illustrated in FIG. 5 , cam curve generation system 1A has aconfiguration different from that of cam curve generation system 1according to the first exemplary embodiment in that cam curve generatingdevice 100 is changed to cam curve generating device 100A. Then, camcurve generating device 100A has a configuration different from that ofcam curve generating device 100 according to the first exemplaryembodiment in that boundary condition acquisition part 40 is changed toboundary condition acquisition part 40A, cam curve storage 80 is changedto cam curve storage 80A, and boundary condition calculator 110 isadded.

Cam curve storage 80A has not only functions of cam curve storage 80according to the first exemplary embodiment, but also a function below.That is, cam curve storage 80A stores a cam curve generated in advanceby an external device.

Thus, cam curve storage 80A stores the cam curve generated by cam curvegenerator 70 or the cam curve generated in advance by the externaldevice. Hereinafter, the “cam curve generated by cam curve generator 70”or the “cam curve generated in advance by the external device” stored incam curve storage 80A is referred to as an “existing cam curve”.

Boundary condition calculator 110 calculates values from the existingcam curve stored in cam curve storage 80A, the values including: a firstposition of the driven shaft at a first position of the main shaft;first speed of the driven shaft at the first position of the main shaft;first acceleration of the driven shaft at the first position of the mainshaft; a second position of the driven shaft at a second position of themain shaft at a time after the first position of the main shaft, secondspeed of the driven shaft at the second position of the main shaft; andsecond acceleration of the driven shaft at the second position of themain shaft.

Here, boundary condition calculator 110 may acquire the first positionof the main shaft and the second position of the main shaft from theoutside, or may store the first position of the main shaft and thesecond position of the main shaft, which are predetermined, instead ofacquiring the positions from the outside, for example.

Boundary condition calculator 110 calculates the first position of thedriven shaft, the first speed of the driven shaft, the firstacceleration of the driven shaft, the second position of the drivenshaft, the second speed of the driven shaft, and the second accelerationof the driven shaft. Then, boundary condition calculator 110 defines afirst section from the first position of the main shaft to the secondposition of the main shaft as an application section, and calculates aboundary condition in which the first position of the driven shaft, thefirst speed of the driven shaft, and the first acceleration of thedriven shaft are defined as the position of the driven shaft at thestart of the application section, the speed of the driven shaft at thestart of the application section, and the acceleration of the drivenshaft at the start of the application section, respectively. Boundarycondition calculator 110 also calculates a boundary condition where thesecond position of the driven shaft, the second speed of the drivenshaft, and the second acceleration of the driven shaft are respectivelydefined as a position of the driven shaft at the end of the applicationsection, speed of the driven shaft at the end of the applicationsection, and acceleration of the driven shaft at the end of theapplication section.

Boundary condition acquisition part 40A has not only functions ofboundary condition acquisition part 40 according to the first exemplaryembodiment, but also a function below. That is, boundary conditionacquisition part 40A acquires the boundary condition calculated byboundary condition calculator 110.

<Operation>

Cam curve generating device 100A having the above configuration performsa second cam curve generation processing of generating a cam curve, forexample.

Hereinafter, the second cam curve generation processing to be performedby cam curve generating device 100A will be described with reference tothe drawings.

FIG. 6 is a flowchart of the second cam curve generation processing.

As illustrated in FIG. 6 , the second cam curve generation processing isdifferent from the first cam curve generation processing according tothe first exemplary embodiment in that processing in step S5 is added,the processing in step S10 is changed to processing in step S10A, theprocessing in step S30 is changed to processing in step S30A, theprocessing in step S50 is changed to processing in step S50A, and theprocessing in step S60 is changed to processing in step S60A. Thus, theprocessing in step S5, the processing in step S10A, the processing instep S30A, the processing in step S50A, and the processing in step S60Awill be mainly described here.

The second cam curve generation processing is started when cam curvegenerating device 100A is operated to start the second cam curvegeneration processing, for example.

When the second cam curve generation processing is started, boundarycondition calculator 110 calculates a boundary condition from theexisting cam curve stored in cam curve storage 80A while defining thefirst section as the application section (step S5).

Next, section information acquisition part 20 acquires sectioninformation (step S10A). More specifically, section informationacquisition part 20 acquires the section information with the firstsection defined as the application section from the cam curve generationcondition received by input receiver 10. Then, the processing proceedsto step S20.

When the processing in step S20 ends, division condition acquisitionpart 30 acquires a division condition (step S30A). More specifically,division condition acquisition part 30 acquires the division conditionwith the first section defined as the application section from the camcurve generation condition received by input receiver 10. Then, theprocessing proceeds to step S40.

When the processing in step S40 ends, boundary condition acquisitionpart 40A acquires a boundary condition (step S50A). More specifically,boundary condition acquisition part 40A acquires the boundary conditioncalculated by boundary condition calculator 110.

When the boundary condition is acquired by boundary conditionacquisition part 40A, cam curve generator 70 generates a cam curve inthe application section, which is the first section, based on theboundary condition acquired by boundary condition acquisition part 40A,the cam curve satisfying the boundary condition. At this time, cam curvegenerator 70 generates the cam curve that allows a position of thedriven shaft, speed of the driven shaft, and acceleration of the drivenshaft to be continuous at each of boundaries of the multiplesub-sections based on the information indicating the sub-sections outputfrom section divider 60 (step S60A).

When processing in step S60A ends, cam curve generating device 100A endsthe second cam curve generation processing.

<Consideration>

Cam curve generating device 100A enables generating a new cam curve thatis smoothly connected to the existing cam curve at the first position ofthe main shaft and the second position of the main shaft from theexisting cam curve previously generated and that has a transition rangeof the main shaft from the first position of the main shaft to thesecond position of the main shaft.

Other Exemplary Embodiments

Although the cam curve generating device and the like according to anaspect of the present disclosure have been described above based on thefirst exemplary embodiment and the second exemplary embodiment, thepresent disclosure is not limited to these embodiments. Configurationsin which various variations conceived by those skilled in the art areapplied to the exemplary embodiments, and an aspect formed by combiningcomponents in different exemplary embodiments may be included within thescope of one or more aspects of the present disclosure, withoutdeparting from the gist of the present disclosure.

-   -   (1) The first exemplary embodiment describes cam curve        generating device 100 that includes driven shaft command        generator 90, for example. However, cam curve generating device        100 is not necessarily limited to the configuration including        driven shaft command generator 90. For example, cam curve        generating device 100 may not include driven shaft command        generator 90, and the function of driven shaft command generator        90 may be implemented by a device outside cam curve generating        device 100.    -   (2) The first exemplary embodiment describes cam curve        generating device 100 and servo control device 200 that are        independent of each other. However, cam curve generating device        100 and the servo control device 200 do not necessarily need to        be configured to be independent of each other. For example, cam        curve generating device 100 may be configured to implement the        function of servo control device 200.    -   (3) An aspect of the present disclosure may be not only cam        curve generating device 100 or cam curve generating device 100A,        but also a cam curve generating method including steps        corresponding to characteristic components included in cam curve        generating device 100 or cam curve generating device 100A. An        aspect of the present disclosure may be a computer program that        causes a computer to execute each characteristic step included        in the cam curve generating method. Additionally, an aspect of        the present disclosure may be a non-transitory computer-readable        recording medium on which the above computer program is        recorded.

INDUSTRIAL APPLICABILITY

The present disclosure is widely applicable to a cam curve generatingdevice that generates a cam curve for implementing electronic camcontrol for controlling a position of a driven shaft in synchronizationwith a position of a main shaft, for example. The cam curve generatingdevice is also useful for industrial equipment that repeatedly andcontinuously performs a series of processing processes.

REFERENCE MARKS IN THE DRAWINGS

-   -   1, 1A: cam curve generation system    -   10: input receiver    -   20: section information acquisition part    -   30: division condition acquisition part    -   40, 40A: boundary condition acquisition part    -   50: section setting part    -   60: section divider    -   70: cam curve generator    -   80, 80A: cam curve storage    -   90: driven shaft command generator    -   100, 100A: cam curve generating device    -   110: boundary condition calculator    -   200: servo control device    -   300: motor

1. A cam curve generating device that generates a cam curve forcontrolling a position of a driven shaft, the cam curve generatingdevice comprising: a boundary condition acquisition part; a divisioncondition acquisition part; a section divider; and a cam curvegenerator, wherein the boundary condition acquisition part acquires aboundary condition of an application section to be a target ofgeneration of the cam curve in a range in which a main shaft changes inposition, the division condition acquisition part is configured toacquire a division condition for dividing the application section into aplurality of sub-sections, the section divider is configured to dividethe application section into the plurality of sub-sections that satisfythe division condition, the cam curve generator is configured togenerate the cam curve in the application section, the cam curvesatisfying the boundary condition, each of the plurality of sub-sectionsis any one of types of a sub-section in which acceleration of the drivenshaft monotonously increases, a sub-section in which the acceleration ofthe driven shaft monotonously decreases, and a sub-section in which theacceleration of the driven shaft does not change, the division conditionincludes a length and a type of each of the plurality of sub-sections,the boundary condition includes a position of the driven shaft, a speedof the driven shaft, and an acceleration of the driven shaft at each ofa start and an end of the application section, and the cam curvegenerator is configured to generate the cam curve that allows a positionof the driven shaft, speed of the driven shaft, and acceleration of thedriven shaft to be continuous at each of boundaries of the plurality ofsub-sections.
 2. The cam curve generating device according to claim 1,wherein the cam curve includes at least one sub-section of a sub-sectionin which the acceleration of the driven shaft monotonically increasesand a sub-section in which the acceleration of the driven shaftmonotonically decreases, and the cam curve generator generates the camcurve with a waveform of the acceleration of the driven shaft from astart to an end of the at least one sub-section, the waveform having ashape of a ¼ period part up to an apex of a sine wave.
 3. The cam curvegenerating device according to claim 1, wherein the cam curve includesat least one sub-section of a sub-section in which the acceleration ofthe driven shaft monotonically increases and a sub-section in which theacceleration of the driven shaft monotonically decreases, and the camcurve generator generates the cam curve with a waveform of theacceleration of the driven shaft from a start to an end of the at leastone sub-section, the waveform having a shape of a half period part fromthe apex of the sine wave.
 4. The cam curve generating device accordingto claim 1, wherein the cam curve includes at least one sub-section of asub-section in which the acceleration of the driven shaft monotonicallyincreases and a sub-section in which the acceleration of the drivenshaft monotonically decreases, and the cam curve generator generates thecam curve with a waveform of the acceleration of the driven shaft from astart to an end of the at least one sub-section, the waveform having ashape of a ¼ period part from the apex of the sine wave.
 5. The camcurve generating device according to claim 1, wherein the cam curveincludes at least one sub-section of a sub-section in which theacceleration of the driven shaft monotonically increases and asub-section in which the acceleration of the driven shaft monotonicallydecreases, and the cam curve generator generates the cam curve with awaveform of the acceleration of the driven shaft from a start to an endof the at least one sub-section, the waveform being defined by a linearpolynomial of a position of the main shaft.
 6. The cam curve generatingdevice according to claim 1, wherein the plurality of sub-sections arefive sub-sections that include a first sub-section, a secondsub-section, a third sub-section, a fourth sub-section, and a fifthsub-section, and that are sequentially continuous, the firstsub-section, the third sub-section, and the fifth sub-section are each asub-section in which acceleration of the driven shaft monotonicallyincreases or a sub-section in which the acceleration of the driven shaftmonotonically decreases, and the second sub-section and the fourthsub-section are each a sub-section in which the acceleration of thedriven shaft does not change.
 7. The cam curve generating deviceaccording to claim 6, wherein the acceleration of the driven shaft inthe second sub-section and the fourth sub-section has a value other thanzero.
 8. The cam curve generating device according to claim 1, whereinthe plurality of sub-sections are seven sub-sections that include afirst sub-section, a second sub-section, a third sub-section, a fourthsub-section, a fifth sub-section, a sixth sub-section, and a seventhsub-section and that are sequentially continuous, the first sub-section,the third sub-section, the fifth sub-section, and the seventhsub-section are each a sub-section in which acceleration of the drivenshaft monotonically increases or a sub-section in which the accelerationof the driven shaft monotonically decreases, and the second sub-section,the fourth sub-section, and the sixth sub-section are each a sub-sectionin which the acceleration of the driven shaft does not change.
 9. Thecam curve generating device according to claim 8, wherein theacceleration of the driven shaft in the second sub-section and the sixthsub-section has a value other than zero, and the acceleration of thedriven shaft in the fourth sub-section is zero.
 10. The cam curvegenerating device according to claim 1, further comprising a sectionsetting part that divides a range in which the main shaft changes inposition into the application section and a non-application sectionother than the application section.
 11. The cam curve generating deviceaccording to claim 1, further comprising: an existing cam curve storagethat stores an existing cam curve generated in advance; and a boundarycondition calculator that calculates values from the existing cam curve,the values including: a first position of the driven shaft at a firstposition of a main shaft; first speed of the driven shaft at the firstposition of the main shaft; first acceleration of the driven shaft atthe first position of the main shaft; a second position of the mainshaft at a time after the first position of the main shaft; second speedof the driven shaft at the second position of the main shaft; and secondacceleration of the driven shaft at the second position of the mainshaft, and that calculates boundary conditions in which a first sectionfrom the first position of the main shaft to the second position of themain shaft is defined as the application section in the range in whichthe main shaft changes in position in the existing cam curve, theboundary conditions including: a first boundary condition where thefirst position of the driven shaft, the first speed of the driven shaft,and the first acceleration of the driven shaft are respectively definedas a position of the driven shaft at the start, speed of the drivenshaft at the start, and acceleration of the driven shaft at the start;and a second boundary condition where the second position of the drivenshaft, the second speed of the driven shaft, and the second accelerationof the driven shaft are respectively defined as a position of the drivenshaft at the end, speed of the driven shaft at the end, and accelerationof the driven shaft at the end, wherein the boundary conditionacquisition part acquires the boundary conditions calculated by theboundary condition calculator, the division condition acquisition partacquires the division condition where the first section is defined asthe application section, the section divider defines the first sectionas the application section and divides the application section into theplurality of sub-sections, and the cam curve generator generates the camcurve with the first section as the application section.
 12. The camcurve generating device according to claim 1, wherein the range in whichthe main shaft changes in position includes a section other than theapplication section, the section being defined as a non-applicationsection, the boundary condition includes a third boundary condition atthe start of the application section, the third boundary condition beingset to a position of the driven shaft, speed of the driven shaft, andacceleration of the driven shaft in the non-application section at timecorresponding to the start, and a fourth boundary condition at the endof the application section, the fourth boundary condition being set to aposition of the driven shaft, speed of the driven shaft, andacceleration of the driven shaft in the non-application section at timecorresponding to the end.
 13. A cam curve generating method forgenerating a cam curve for controlling a position of a driven shaft, thecam curve generating method comprising: a first step of acquiring aboundary condition of an application section to be a target ofgeneration of the cam curve in a range in which a main shaft changes inposition; a second step of acquiring a division condition for dividingthe application section into a plurality of sub-sections; a third stepof dividing the application section into the plurality of sub-sectionsthat satisfy the division condition; and a fourth step of generating thecam curve in the application section, the cam curve satisfying theboundary condition, wherein each of the plurality of sub-sections is anyone of types of a sub-section in which acceleration of the driven shaftmonotonously increases, a sub-section in which the acceleration of thedriven shaft monotonously decreases, and a sub-section in which theacceleration of the driven shaft does not change, the division conditionincludes a length and a type of each of the plurality of sub-sections,the boundary condition includes a position of the driven shaft, speed ofthe driven shaft, and acceleration of the driven shaft at each of astart and an end of the application section, and the fourth step isperformed to generate the cam curve that allows a position of the drivenshaft, speed of the driven shaft, and acceleration of the driven shaftto be continuous at each of boundaries of the plurality of sub-sections.14. (canceled)